Technique for Creating Print Data Utilized by an Ink Jet Printer

ABSTRACT

This specification discloses a computer program product for creating print data utilized by an ink jet printer. The ink jet printer comprises an ink jet head moving in a predetermined direction with respect to a print medium. The computer program product includes instructions for ordering a computer to perform a reading step of reading image data that includes a plurality of first combinations. Each first combination comprises a position and information concerning whether a dot is to be formed at the position. The computer program product includes instructions for ordering the computer to further perform a print data creating step of creating the print data by creating a second combination for each position at which the dot is to be formed. Each second combination comprises the position at which the dot is to be formed and one nozzle randomly selected from the nozzles of the nozzle unit which corresponds to the position. In the print data creating step, the same nozzle cannot be selected for more than a predetermined number of positions continuously aligned along the predetermined direction.

CROSS REFERENCE TO RELATED APPLICATION

This application claims priority to Japanese Patent Application No.2005-098439, filed on Mar. 30, 2005, the contents of which are herebyincorporated by reference into the present application.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a technique for forming print datautilized by an ink jet printer. The ink jet printer of the presentspecification includes all devices for printing onto a print medium bymeans of discharging ink (printers, copiers, fax machines,multifunctional products, etc.).

2. Description of the Related Art

Ink jet printers print onto a print medium by means of discharging inkThe manner in which printing is performed by an ink jet printer will bedescribed with reference to FIG. 18. An ink jet printer 151 has an inkjet head 152 that moves with respect to a print medium 150. In FIG. 18,the ink jet head 152 moves in a Y direction with respect to the printmedium 150. The ink jet head 152 passes a front side of the print medium150. The ink jet head 152 has a plurality of nozzles 153˜157. Thenozzles 153˜157 are aligned in an X direction that is orthogonal to theY direction. The nozzles 153˜157 can discharge ink droplets in thedirection perpendicular to the page.

The ink droplets are discharged from the nozzles 153˜157 while the inkjet head 152 is moving with respect to the print medium 150. One dot isformed on the print medium 150 by discharging one or a plurality of inkdroplets from one nozzle. In FIG. 18, 35 dots have been formed on theprint medium 150. The dots aligned in the Y direction have been formedby one nozzle. For example, a dot line D1 has been formed bycontinuously discharging ink droplets from the nozzle 153. Similarly, adot line D2 has been formed by the nozzle 154, a dot line D3 has beenformed by the nozzle 155, a dot line D4 has been formed by the nozzle156, and a dot line D5 has been formed by the nozzle 157.

The nozzles 153˜157 might not be equidistant in the X direction. In theexample of FIG. 18, the nozzle 155 is slightly displaced toward theright. In this case, the dot line D3 is formed slightly displaced towardthe right The dot line D2 and the dot line D3 barely overlap, and thereis a large overlap of the dot line D3 and the dot line D4. In this case,ink density between the dot line D2 and the dot line D3 is much lessthan in other portions. The region in which the ink density is smallerextends continuously in the Y direction. Further, the ink densitybetween the dot line D3 and the dot line D4 is much greater than inother portions. The region in which the ink density is greater extendscontinuously in the Y direction. When the region in which the inkdensity is smaller or greater extends continuously in the Y direction, auser can perceive a striped pattern that extends in the Y direction.Printing results are thus unsatisfactory.

The technique set forth in Japanese Patent Application Publication No.2004/345167 will be described with reference to FIG. 19. An ink jet head202 of an ink jet printer 201 has a plurality of nozzle units 203˜207.The nozzle unit 203 has a pair of nozzles 203 a and 203 b that arealigned in a direction (a Y direction) in which the ink jet head 202moves with respect to a print medium 200. The other nozzle units 204˜207each have a configuration similar to the configuration of the nozzleunit 203. That is, the nozzle units 204˜207 have nozzles 204 a˜207 a andnozzles 204 b˜207 b. The nozzles 203 a˜207 a and nozzles 203 b˜207 b candischarge the same color ink.

The nozzle unit 203 can form one dot on the print medium by dischargingink droplets from either of the nozzles 203 a and 203 b. The othernozzle units 204˜207 can also form one dot on the print medium bydischarging ink droplets from either of the nozzles.

With the technique of FIG. 19, an external device (for example, a PC)connected with the ink jet printer 201 selects one nozzle at random fromthe nozzles of the nozzle unit which corresponds to the position atwhich the dot is to be formed.

For example, if the position at which a dot is to be formed is P11, onenozzle (the nozzle 203 a or the nozzle 203 b) is selected at random fromthe nozzle unit 203 that corresponds to P11. In the case where theexternal device has selected the nozzle 203 a, the external devicecreates information including the combination of P11 and the nozzle 203a.

As another example, if the position at which a dot is to be formed isP12, one nozzle is selected at random out of the nozzles 203 a and 203b. In the case where the external device has selected the nozzle 203 b,the external device creates information including the combination of P12and the nozzle 203 b.

As another example, if the position at which a dot is to be formed isP21, one nozzle (the nozzle 204 a or the nozzle 204 b) is selected atrandom from the nozzle unit 204 that corresponds to P21. In the casewhere the external device has selected the nozzle 204 b, the externaldevice creates information including the combination of P21 and thenozzle 204 b.

The external device creates data that includes a plurality ofcombinations of position and nozzle. Below, this data will be termedprint data. The external device outputs the print data to the ink jetprinter 201. The ink jet printer 201 discharges ink from the nozzlesbased on the print data. For example, in the case where print data hasbeen obtained having the combination of P11 and the nozzle 203 a, theink jet printer 201 discharges ink from the nozzle 203 a toward P11. Asanother example, in the case where print data has been obtained havingthe combination of P12 and the nozzle 203 b, the ink jet printer 201discharges ink from the nozzle 203 b toward P12. As another example, inthe case where print data has been obtained having the combination ofP21 and the nozzle 204 b, the ink jet printer 201 discharges ink fromthe nozzle 204 b toward P21.

In FIG. 19, hatching has been applied to the dots formed by the nozzles203 a˜207 a Hatching has not been applied to the dots formed by thenozzles 203 b˜207 b.

In the nozzle line D3 of FIG. 19, the dots formed by the nozzle 205 aare displaced toward the right. The dots formed by the nozzle 205 b arenot displaced. The dots of the other nozzle lines D1, D2, D4, and D5 arealso not displaced.

With this technique, if the nozzle 205 a is not aligned equidistantly inthe X direction, the dot line D3 will not be formed only by the nozzle205 a, but will instead be formed by both the nozzle 205 a and thenozzle 205 b. As a result, some dots in the dot line D3 are notdisplaced. With this technique, it may be possible to prevent in whichthe ink density is much greater or smaller from continuing across a widerange. Better printing results can be obtained with this technique thanwit the conventional technique described using FIG. 18.

BRIEF SUMMARY OF THE INVENTION

In the conventional technique described using FIG. 19, one nozzle isselected at random from among the plurality of nozzles for the positionwhere the dot is to be formed. In this case, there is a possibility thatthe same nozzle will be selected continuously for a large number ofpositions continuously aligned along the Y direction. With thistechnique, therefore, it is not possible to completely eliminate thephenomenon wherein regions in which the ink density is much greater orsmaller continue across a wide range There is a possibility thatsatisfactory printing results cannot be obtained.

The present invention has been created taking the above conditions intoconsideration. The present invention teaches a technique that allowsbetter printing results to be obtained than the conventional technique.

The present invention relates to a technique for creating print datautilized by an ink jet printer. The print data creating technique of thepresent invention will be described using FIG. 1.

In the present invention, print data is created that is utilized by anink jet printer 301 provided with the following conditions.

(1) The ink jet printer 301 has an ink jet head 302 that moves along apredetermined direction (a Y direction in FIG. 1) with respect to aprint medium 300.

(2) The ink jet head 302 has a plurality of nozzle units 303˜307.

(3) The nozzle units 303˜307 each have at least two nozzles aligned inthe aforementioned predetermined direction. For example, the nozzle unit303 has nozzles 303 a and 303 b. The other nozzle units 304˜307 eachhave at least two nozzles 304 a˜307 a and 304 b˜307 b.

(4) The nozzles 303 a˜307 a and 303 b˜307 b can discharge the same colorink.

(5) Each nozzle unit 303˜307 can create a dot on the print medium 300 bydischarging ink from one nozzle (for example 303 a) selected out of thenozzles (for example, 303 a and 303 b) of the nozzle unit (for example,303).

A computer program product for creating print data is taught in thepresent invention. This computer program product includes instructionsfor ordering a computer to perform a reading step and a print datacreating step.

In the reading step, image data including a plurality of firstcombinations is read. Each of the first combinations includes a positionand information hereafter termed dot information) concerning whether adot is to be formed at the position. For example, 35 positions P11, P12,P13, etc. are shown in FIG. 1. In the case of FIG. 1, the image dataincluding the 35 first combinations are read in the reading step.Further, in this example, dots are to be formed at all positions exceptfor P13.

In the print data creating step, print data is created by creating asecond combination for each position at which the dot is to be formed.In the example of FIG. 1, the second combinations are created for thepositions P11, P12, etc. Since P13 is a position at which a dot is notto be formed, a second combination is not created for P13. Each of thesecond combinations includes the position at which the dot is to beformed, and one nozzle randomly selected from the nozzles of the nozzleunit corresponding to the position. For example, the second combinationfor P11 is a combination including P11 and one nozzle (303 a or 303 b)randomly selected from the nozzles 303 a and 303 b of the nozzle unit303 corresponding to P11. Further, the second combination for P21 is acombination including P21 and one nozzle (304 a or 304 b) randomlyselected from the nozzles 304 a and 304 b of the nozzle unit 304corresponding to P21.

Moreover, in the print data creating step, it is prohibited to selectthe same nozzle for more than a predetermined number of positionscontinuously aligned along the predetermined direction (the Ydirection). For example, if the predetermined number is two, the samenozzle cannot be selected for three or more positions alignedcontinuously along the Y direction. In this case, for example, the samenozzle (for example 303 a) cannot be selected for P14, P15, and P16.

The print data created by the present invention is utilized by the inkjet printer 301. When the ink jet printer 301 obtains, for example, thesecond combination of P11 and the nozzle 303 a, the ink jet printer 301causes ink to be discharged from the nozzle 303 a towards P11, and a dotis thus formed. In FIG. 1 (c), 34 dots formed by the ink jet printer 301are shown. A dot is not formed at the position corresponding to P13.This is because P13 is not a position where a dot is to be formed inthis example.

In FIG. 1 (c), hatching has been applied to the dots formed by thenozzles 303 a 307 a Hatching has not been applied to dots formed by thenozzles 303 b˜307 b.

Dots formed by the nozzle 305 a are displaced toward the right in anozzle line D3. The dots formed by the nozzle 305 b are not displaced.The dots of the other nozzle lines D1, D2, D4, and D5 are also notdisplaced

With this technique, if the nozzle 305 a is not aligned equidistantly inthe X direction, the dot line D3 will be formed by both the nozzle 305 aand the nozzle 305 b. As a result, displacement of all of the dots inthe dot line D3 is prevented. Moreover, in the print data creating step,the same nozzle cannot be selected for more than a predetermined numberof positions aligned continuously along the Y direction. As a resultdots cannot be formed by the same nozzle for more than the predeterminednumber of positions aligned continuously along the Y direction. Withthis technique, it is possible to completely eliminate the phenomenonwherein regions in which the ink density is much greater or smallercontinue across a wide range. With the present invention, it is possibleto create print data that allows better printing results than theconventional technique.

The content of FIG. 1 and the description based thereon is an example,and a scope of the present invention is not restricted based on FIG. 1or the above content. The scope of the present invention is determinedobjectively based on the teachings of the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a figure for describing the content of the presentinvention. FIG. 1 (a) shows a plan view of a portion of an ink jet head.FIG. 1 (b) shows positions on printing paper FIG. 1 (c) shows an exampleof a dot pattern formed on the printing paper.

FIG. 2 is a simple view of a printing system of an embodiment.

FIG. 3 is a simple plan view of an ink jet head.

FIG. 4 is an enlarged view of a part of the ink jet head.

FIG. 5 is a view in the V direction of FIG. 3. FIG. 5 is a figure fordescribing how ink is discharged from two nozzle lines.

FIG. 6 shows three dots with differing sizes.

FIG. 7 shows a block view of a PC and a printer.

FIG. 8 shows a one row data storage.

FIG. 9 shows count value storages.

FIG. 10 shows buffer areas.

FIG. 11 shows functions realized by the PC.

FIG. 12 shows a flowchart of printing processes executed by the PC.

FIG. 13 shows an example of image data

FIG. 14 shows a flowchart of a print data creating process.

FIG. 15 shows the flowchart of the print data creating process(continued from FIG. 14).

FIG. 16 shows the buffer areas in which selected nozzle information hasbeen written.

FIG. 17 shows a satisfactory dot pattern, and two types ofunsatisfactory dot pattern.

FIG. 18 shows a figure for describing the conventional technique.

FIG. 19 shows a figure for describing the conventional technique.

DETAILED DESCRIPTION OF THE INVENTION Embodiment

An embodiment of the present invention will be described with referenceto figures. FIG. 2 is a simple view of a printing system 10 of thepresent embodiment. The printing system 10 has a PC 20 and an ink jetprinter 30. Below, the ink jet printer 30 may be simply referred to as‘printer 30’. The PC 20 and the printer 30 are connected so as to becapable of communication via a communication cable 50.

The PC 20 has a keyboard 62 a, a mouse 62 b, a display 64, etc. A usercan utilize the keyboard 62 a and the mouse 62 b to command the PC 20 toprint content displayed on the display 64. In this case, the PC 20creates print data, and outputs the print data that has been created tothe printer 30.

The printer 30 inputs the print data that was output from the PC 20. Theprinter 30 has an ink jet head 32 (shown in FIG. 3) capable ofdischarging ink. The printer 30 discharges ink from the ink jet head 32towards printing paper 12 (shown in FIG. 3) in accordance with thecontent of the print data. Letters or images are thus printed on theprinting paper 12 based on the content of the print data.

FIG. 3 is a plan view of the ink jet head 32. The printer 30 has atransferring device 104 (shown in FIG. 7) for transporting the printingpaper 12 in the direction of the arrow YP. That is, the ink jet head 32moves in the direction of the arrow Y with respect to the printing paper12. The printing paper 12 passes a back side of the ink jet head 32perpendicular to the plane of FIG. 3.

The ink jet head 32 has two nozzle lines 34 a and 34 b. The nozzle lines34 a and 34 b includes a plurality of nozzles 34. In FIG. 3, not all ofthe nozzles 34 have numbers applied thereto. The nozzle lines 34 a and34 b extend in an X direction. The X direction is a directionperpendicular to the Y direction. The length of the X direction of thenozzle lines 34 a and 34 b is approximately the same as the width in theX direction of the printing paper 12. The nozzles 34 can discharge inkof the same color (black, for example) in the direction perpendicular tothe plane of FIG. 3.

The ink jet head 32 discharges ink while the printing paper 12 is beingtransported. A hatched region 12 a of the printing paper 12 is a regionthat has been printed by the ink jet head 32. A region 12 b of theprinting paper 12 that has not been hatched is a region that has not yetbeen printed by the ink jet head 32.

In the present embodiment, the ink jet head 32 is fixed to a printermain body (not shown). That is, the printer 30 is a line type printer.

FIG. 4 is an enlarged view of a part of the ink jet head 32. In thepresent embodiment, a pair of nozzles aligned in the Y direction will betermed a nozzle unit. Five nozzle units 34-1˜34-5 are shown in FIG. 4.In fact, more nozzle units are formed in the ink jet head 32. The nozzleunits 34-1˜34-5 are offset in the X direction.

The nozzle unit 34-1 has a pair of nozzles 34 a-1 and 34 b-1 aligned inthe Y direction. Similarly, the other nozzle units 34-2˜34-5 each alsohave a pair of nozzles (34 a-2˜34 a-5, 34 b-2˜34 b-5) aligned in the Ydirection. Two adjacent nozzle units (for example, 34-1 and 34-2) areseparated by a predetermined pitch P.

FIG. 5 is a view of the ink jet head 32 in the V direction of FIG. 3.The nozzles (for example 34 a-1) of the nozzle line 34 a discharge inkin an oblique direction towards the nozzle line 34 b. The nozzles (forexample 34 b-1) of the nozzle line 34 b discharge ink in a verticaldirection If the pair of nozzles (for example, 34 a-1 and 34 b-1) of onenozzle unit (for example, 34-1) discharge ink with the same timing, theink adheres to the same position. Each of the nozzle units (for example,34-1) can form one dot by discharging ink from either nozzle (forexample, 34 a-1 or 34 b-1).

One nozzle unit (for example, 34-1) forms one dot line (for example, D1in FIG. 1). One dot line includes a plurality of dots aligned in the Ydirection.

Further, the ink jet printer 30 can vary the quantity of ink for formingone dot. A large dot is formed when the ink quantity is large. A smalldot is formed when the ink quantity is small. A medium dot is formedwhen the ink quantity is medium. FIG. 6 shows three dots with differingsizes. Each nozzle can form large dots, medium dots, and small dots. Asa result, the printer 30 of the present embodiment can describe fourgradations (large dot, medium dot, small dot, and no dot).

FIG. 7 shows a block view of the PC 20 and the printer 30. First, theconfiguration of the PC 20 will be described.

The PC 20 has a CPU 60, an inputting device 62, the display 64, aninterface (IF) 66, a RAM 68, a ROM 84, a hard disc 86, etc. Each of thedevices 60, 62, etc. are connected so as to be capable of communicationby a bus line 92.

The CPU 60 reads and executes a printer driver 88 stored in the harddisc 86.

The inputting device 62 includes the keyboard 62 a and the mouse 62 bshown in FIG. 2. The user can input information utilizing the inputtingdevice 62. For example, the user can input information for causing theprinter 30 to print content displayed by the display 64.

The display 64 can display information created by various applications.

The IF 66 is connected with an IF 102 of the printer 30. The IF 66outputs the print data to the printer 30.

The RAM 68 has a work area 70, a one row data storage 72, a pixel datastorage 74, a first count value storage 76 a, a second count valuestorage 76 b, a first buffer area 80 a, a second buffer area 80 b, etc.

The work area 70 is a storage utilized when the printer driver 88 isbeing executed.

The storages 72, 74, 76 a, 76 b, 80 a, and 80 b are storages utilized ina print data creating process (to be described).

FIG. 8 shows the one row data storage 72. The one row data storage 72has a plurality of cells 72-1˜72-n (n being a positive integer). The onerow data storage 72 stores gradation values of one row's worth of data(one row data) included in image data. Each cell can store any of thevalues 0, 1, 2, 3. The number of cells corresponds to the resolution ofthe printer 30 in the X direction (see FIG. 3, etc.). That is, thenumber of cells is the same as the number of nozzle units. One cell 72-ncorresponds to one nozzle unit 34-n. For example, the cell 72-1corresponds to the nozzle unit 34-1. As another example, the cell 72-5corresponds to the nozzle unit 34-5. The manner in which the one rowdata storage 72 is utilized will be described in detail later.

The pixel data storage 74 shown in FIG. 7 stores data for one cell(pixel) included in the one row data. The manner in which the pixel datastorage 74 is utilized wilt be described in detail later.

FIG. 9 shows the first count value storage 76 a and the second countvalue storage 76 b. The first count value storage 76 a has a pluralityof cells 76 a-1˜76 a-n. The number of cells of the first count valuestorage 76 a corresponds to the resolution of the printer 30 in the Xdirection. The cell 76 a-n corresponds to the nozzle 34 a-n. The firstcount value storage 76 a stores a count value for each of the nozzles 34a-1˜34 a-n included in the nozzle line 34 a. The cell 76 a-n stores acount value of the corresponding nozzle 34 a-n. The count value will bedescribed in detail later. Each cell of the first count value storage 76a can store any of the values 0, 1, 2.

The second count value storage 76 b has a plurality of cells 76 b-1˜76b-n. The number of cells of the second count value storage 76 bcorresponds to the resolution of the printer 30 in the X direction. Thecell 76 b-n corresponds to the nozzle 34 b-n. The second count valuestorage 76 b stores a count value for each of the nozzles 34 b-1˜34 b-nincluded in the nozzle line 34 b (see FIG. 4, etc.). The cell 76 b-nstores a count value of the corresponding nozzle 34 b-n. Each cell ofthe second count value storage 76 b can store any of the values 0, 1, 2.

FIG. 10 shows the first buffer area 80 a and the second buffer area 80b. The first buffer area 80 a has a plurality of cells 80 a-1˜80 a-n.The number of cells of the first buffer area 80 a corresponds to theresolution of the printer 30 in the X direction. The cell 80 a-ncorresponds to the nozzle 34 a-n. Each cell of the first buffer area 80a can store any of the values 0, 1, 2, 3

The second buffer area 80 b has a plurality of cells 80 b-1˜80 b-n. Thenumber of cells of the second buffer area 80 b corresponds to theresolution of the printer 30 in the X direction. The cell 80 b-ncorresponds to the nozzle 34 b-n. Each cell of the second buffer area 80b can store any of the values 0, 1, 2, 3.

Although this will be described in detail later, the content of thefirst row data is sorted into the first buffer area 80 a or the secondbuffer area 80 b.

The ROM 84 of FIG. 7 stores programs for controlling the CPU 60.

The hard disc 86 stores the printer driver 88. The user installs mediaincluded as an auxiliary component of the printer 30 on the PC 20. Aprogram causing the PC 20 to execute processes (to be described: seeFIGS. 12, 14, 15) is stored in the media. When this program has beeninstalled on the PC 20, the printer driver 88 can function. Theprocesses to be described are executed by the printer driver 88. Thehard disc 86 also stores image data 90. The user can input informationto the inputting device 62 so that the image data 90 is printed by theprinter 30.

The PC 20 realizes various functions by means of the above devices60˜86. FIG. 11 shows an example of functions realized by the PC 20. ThePC 20 has a reading device 120, a selected nozzle information creatingdevice (a print data creating device) 122, a counter 124, and anoutputting device 126.

The reading device 120 reads the image data 90. The reading device 120functions when the processes of FIG. 14 and FIG. 15 (to be described)are to be executed. The reading device 120 is realized by thefunctioning of the CPU 60, the one row data storage 72, etc.

The selected nozzle information creating device 122 creates selectednozzle information (print data). The selected nozzle informationcreating device 122 functions when the processes of FIG. 14 and FIG. 15(to be described) are to be executed. Else selected nozzle informationcreating device 122 is realized by the functioning of the CPU 60, theRAM 68, the ROM 84, the printer driver 88, etc.

The counter 124 stores count values of nozzle units 34, etc. The counter124 functions when the process of FIG. 14 and FIG. 15 (to be described)are to be executed, The counter 124 is realized by the functioning ofthe CPU 60, the count value storages 76 a and 76 b, etc.

The outputting device 126 outputs the selected nozzle information (theprint data) that has been created to the printer 30. The outputtingdevice 126 functions when the processes of FIG. 14 and FIG. 15 (to bedescribed) are to be executed. The outputting device 126 is realized bythe functioning of the CPU 60, the IF 66, etc.

Next, the configuration of the printer 30 will be described.

The printer 30 has a CPU 100, the IF 102, the transferring device 104, aRAM 106, the ink jet head 32, etc. The devices 100, 102, etc. areconnected so as to be capable of communication by a bus line 112.

The CPU 100 controls the transferring device 104 and the ink jet head 32based on commands from the PC 20.

The IF 102 is connected with the IF 66 of the PC 20. The IF 102 inputsprint data sent from the PC 20.

The transferring device 104 moves the printing paper 12 (see FIG. 3) inthe direction of the arrow YP.

The ink jet head 32 prints the printing paper 12 by discharging ink.

The RAM 106 has a work area 108 for operating the CPU 100.

In the present embodiment, the hardware configuration of the ink jetprinter 30 is explained in an extremely simple manner. The configurationof the ink jet printer 30 is taught in, for example, U.S. patentapplication Ser. No. 11/281,463 and 11/285,291. The contents of U.S.Ser. No. 11/281,463 and U.S. Ser. No. 11/285,291 may be incorporated byreference into the present application.

Next, the processes executed by the PC 20 will be described withreference to the flowchart of FIG. 12. FIG. 12 shows a flowchart showingthe processes executed by the PC 20. The processes of FIG. 12 areexecuted by the CPU 60 (see FIG. 7) utilizing the printer driver 88.

The user can use the inputting device 62 (see FIG. 7) to command theimage data 90 being stored in the hard disc 86 to be printed, In thiscase, the CPU 60 activates the printer driver 88, and executes arasterizing process (S801).

The image data 90 prior to the execution of the rasterizing process isdisplayed in a vector format. In the rasterizing process, the image data90 in the vector format is converted to data in a bit mapped format. Theimage data 90 is converted to data that conforms with the resolution ofthe printer 30. The image data 90 in the bit mapped format containsinformation for a plurality of pixels. One pixel is represented by datahaving the combination of the position (coordinate on the printingpaper) and the gradation at that position In the image data 90 in thebit mapped format, one pixel is represented by 256 gradations (8 bits)or 6553 gradations (16 bits). The image data 90 after the rasterizingprocess is stored in the work area 70 of the RAM 68.

Next, the CPU 60 executes a color adjustment process (S802). In thecolor adjustment process, the colors for the image data 90 arecorrected. Further, ROB data is converted into CMYK data. The image data90 after the color adjustment process is stored in the work area 70 ofthe RAM 68. The image data 90 prior to the color adjustment process iserased from the RAM 68.

The CPU 60 executes a halftone process (S803). As described above, withthe image data 90 after the rasterizing process, one pixel isrepresented by 256 gradations or 6553 gradations. By contrast, theprinter 30 of the present embodiment can only represent four gradations(large dot, medium dot, small dot, and no dot) for one pixel (i.e. forone position). In the halftone process, the image data 90 in the bitmapped format is converted into data having four gradations for onepixel, The error diffusion method or the dither method is utilized inthe halftone process. Since these methods are known, they will not bedescribed in detail here. The image data 90 after the halftone processis stored in the work area 70 of the RAM 68. The image data 90 prior tothe halftone process is erased from the RAM 68.

FIG. 13 shows an example of the image data 90 after the halftoneprocess. The image data 90 has a plurality of pixels C1˜C5 etc. Thenumber of pixels aligned in the X direction is the same as theresolution of the printer 30 in the X direction. That is, the number ofpixels aligned in the X direction is the same as the number of nozzleunits of the ink jet head 32. The X direction is a direction orthogonalto the direction in which the printing paper 12 is transported. Thenumber of pixels aligned in the Y direction is the same as theresolution of the printer 30 in the Y direction. The Y direction is thedirection in which the printing paper 12 is transported. X and Y in FIG.13 correspond to X and Y in FIG. 3, etc.

Below, the position of one pixel of the image data 90 is represented asa two dimensional coordinate. For example, the position of the pixel C1is represented as (1,1). The position of the pixel C2 is represented as(2,1).

Each pixel stores one out of the gradation values 0, 1, 2, 3. Thegradation value 0 corresponds to ‘no dot.’ The gradation value 1corresponds to ‘small dot.’ The gradation value 2 corresponds to ‘mediumdot.’ The gradation value 3 corresponds to ‘large dot.’

The pixel C1 has a gradation value 0. As a result, the pixel C1 is datahaving a combination of (1,1) and the gradation value 0. With the pixelC1, no dot is to be formed at the coordinate (1,1) of the printing paper12. Further, the pixel C2 is data having a combination of (2,1) and thegradation value 1. With the pixel C2, a small dot is to be formed at thecoordinate (2,1) of the printing paper 12.

Below, the plurality of pixels aligned in the X direction of the imagedata 90 is termed one row data. In FIG. 13, five row's worth of one rowdata is shown.

When the CPU 60 has finished the halftone process, the CPU 60 executesthe print data creating process (S804). In the process of S804, printdata that includes selected nozzle information is created.

FIGS. 14 and 15 show a flowchart of the print data creating process. TheCPU 60 initializes the count value storages 76 a and 76 b (S1001). InS1001, 0 is written into all of the cells 76 a-1˜76 a-n (see FIG. 9) inthe first count value storage 76 a. Further, 0 is written into all ofthe cells 76 b-1˜76 b-n (see FIG. 9) in the second count value storage76 b.

Next, the CPU 60 initializes the buffer areas 80 a and 80 b of the RAM68 (S1002). In S1002, 0 is written into all of the cells 80 a-1˜80 a-n(see FIG. 10) in the first buffer area 80 a, Further, 0 is written intoall of the cells 80 b-1˜80 b-n (see FIG. 10) in the second buffer area80 b.

Next, the CPU 60 reads the one row data (S1003) of the image data 90(being stored in the work area 70 of the RAM 68) after the halftoneprocess (S803). When the process of S1003 is performed at the firsttime, a first row of one row data (C1˜C5, etc. of FIG. 13) is read.

The one row data that has been read is written into the one row datastorage 72 of the RAM 68 (see FIG. 7). The one row data storage 72 ofFIG. 8 stores the first row of the one row data of the image data 90 ofFIG. 13. The one row data storage 72 stores the one row data in a statethat maintains the sequence of the cells of the image data 90. Forexample, the first row of the one row data of FIG. 13 has the gradationvalues aligned in the sequence, from left, 0, 1, 3, 1, 3. In this case,the one row data storage 72 also stores the gradation values in thissequence. In FIG. 8, also, these are aligned in the sequence, from left,0, 1, 3, 1, 3.

In the process of S1003, only one row's worth of the one row data isread. A plurality of row's worth of one row data is not read. When thefollowing processes have been completed for one row's worth of the onerow data, the next one row data is read. For example, when the processeshave been completed for the first row of the one row data, the secondrow of the one row data is read. In S1003, the one row data is read inthe sequence of alignment in the Y direction of the image data 90.

Next, the CPU 60 reads the gradation value of one pixel (cell) from theone row data in the one row data storage 72 (S1004). The gradation valuethat has been read is stored in the pixel data storage 74 of the RAM 68.

One pixel is read in the process of S1004. A plurality of pixels is notread. When the following processes have been completed for one pixel,the next pixel is read. In S1004, the pixels are read in the sequence ofalignment in the X direction of the one row data. For example, when theprocesses have been completed for the cell 72-1 of FIG. 8, the cell 72-2is then read. When the processes have been completed for the cell 72-2,the cell 72-3 is then read.

The CPU determines whether the gradation value stored in the pixel datastorage 74 is 0 (S1005). If the gradation value is 0 (YES in S1005), 0is written (S1006) in the count value storages 76 a and 76 b thatcorrespond to the pixel read in S1004. For example, if the cell 72-1 ofFIG. 8 is read in S1004, YES is determined in S1005. The cell 72-1corresponds to the cells 76 a-1 and 76 b-1 of FIG. 9. In S1006, 0 iswritten in both the cells 76 a-1 and 76 b-1.

In S1006, nothing is written in the buffer areas 80 a and 80 b. Thebuffer areas 80 a and 80 b are initialized in S1002. As a result, thecells of the buffer areas 80 a and 80 b that correspond to the pixelread in S1004 remain at 0. For example if the cell 72-1 of FIG. 8 isread in S1004, 80 a-1 and 80 b-1 of FIG. 10 remain at 0.

When S1006 ends, the CPU 60 determines whether all the processes havebeen completed for all the pixels stored in the one row data storage 72(S1050). In the case where NO is determined, the process returns toS1004, and the CPU 60 reads the next pixel. For example, if the processfor the cell 72-1 of FIG. 8 has been completed, the cell 72-2 is read.

However, if NO was determined in S1005, the process proceeds to S1011 ofFIG. 15. For example, in the case where the cell 72-2 of FIG. 8 has beenread in S1004, the gradation value of the cell 72-2 is 1, andconsequently NO is determined in S1005. In this case, the processesafter S1011 are executed.

In S1011 of FIG. 15, the CPU 60 determines whether 2 is stored in thecell of the first count value storage 76 a that corresponds to the pixelread in S1004. That is, in the case where the cell 72-n of FIG. 8 hasbeen read in S1004, the value of the cell 76 a-n of FIG. 9 is checked inS1011. For example, if the cell 72-2 of FIG. 8 has been read in S1004,the value of the cell 76 a-2 of FIG. 9 is checked in S1011.

If YES was determined in S1011, the CPU 60 writes the gradation value ofthe pixel read in S1004 into the cell of the second buffer area 80 bthat corresponds to this pixel (S1012). That is, in the case where thegradation value of the cell 72-n of FIG. 8 has been read in S1004, theCPU 60 writes that graduation value into the cell 80 b-n of FIG. 10 inS1012. For example, in the case where the cell 72-2 (gradation value 3)of FIG. 8 has been read in S1004, 1 is written into the cell 80 b-2 ofFIG. 10 in S1012.

When S1012 has been completed, the process proceeds to S1013. The CPU 60writes 0 in the cell of the first count value storage 76 a thatcorresponds to the pixel read in S1004. That is, if the cell 72-n ofFIG. 8 has been read in S1004, the CPU 60 writes 0 in the cell 76 a-n ofFIG. 9 in S1013. Further, the CPU 60 writes I in the cell of the secondcount value storage 76 b that corresponds to the pixel read in S1004.That is, if the cell 72-n of FIG. 8 has been read in S1004, the CPU 60writes 1 in the cell 76 a-n of FIG. 9 in S1013.

When S1013 has been completed, the process proceeds to S1050 (see FIG.14).

If NO was determined in S1011, the process proceeds to S1014. The CPU 60determines whether 2 is stored in the cell of the second count valuestorage 76 b corresponding to the pixel read in S1004. That is, in thecase where the cell 72-n of FIG. 8 has been read in S1004, the value ofthe cell 76 b-n of FIG. 9 is checked in S1014.

If YES was determined, the CPU 60 writes the gradation value of thepixel read in S1004 into the cell of the first buffer area 80 a thatcorresponds to this pixel (S1015). That is, in the case where thegradation value of the cell 72-n of FIG. 8 has been read in S1004, theCPU 60 writes that graduation value into the cell 80 a-n of FIG. 10 inS1015.

When S1015 has been completed, the process proceeds to S1016. The CPU 60writes 1 in the cell of the first count value storage 76 a thatcorresponds to the pixel read in S1004. That is, if the cell 72-n ofFIG. 8 has been read in S1004, the CPU 60 writes 1 in the cell 76 a-n ofFIG. 9 in S1016. Further, the CPU 60 writes 0 in the cell of the secondcount value storage 76 b that corresponds to the pixel read in S1004.That is, if the cell 72-n of FIG. 8 has been read in S1004, the CPU 60writes 0 in the cell 76 b-n of FIG. 9 in S1016.

When S1016 has been completed, the process proceeds to S1050 (see FIG.14).

If NO was determined in S1014, the CPU 60 randomly obtains either 1 or 2(S1021). The random number 1 or 2 is created in the work area 70 of theRAM 68.

The CPU 60 checks whether the random number obtained in S1021 is 1(S1022). If NO is determined (if the random number is 2), the CPU 60writes the gradation value of the pixel read in S1004 into the cell ofthe second buffer area 80 b that corresponds to this pixel (S1031). Thatis, in the case where the gradation value of the cell 72-n of FIG. 8 hasbeen read in S1004, the CPU 60 writes that graduation value into thecell 80 b-n of FIG. 10 in S1031.

When S1031 has been completed, the process proceeds to S1032. The CPU 60writes 0 in the cell of the first count value storage 76 a thatcorresponds to the pixel read in S1004. That is, if the cell 72-n ofFIG. 8 has been read in S1004, the CPU 60 writes 0 in the cell 76 a-n ofFIG, 9 in S1032. Further, the CPU 60 adds 1 to the value of the cell ofthe second count value storage 76 b that corresponds to the pixel readin S1004. That is, if the cell 72-n of FIG. 8 has been read in S1004,the CPU 60 adds 1 to the value of the cell 76 b-n of FIG. 9 in S1032.For example, if the value in the cell 76 b-n was 0, the value of thecell 76 b-n becomes 1. As another example, if the value in the cell 76b-n was 1, the value of the cell 76 b-n becomes 2. Moreover, if thevalue in the cell 76 b-n was 2, YES was determined in S1014, andconsequently the process would not have proceeded to S1032.

When S1032 has been completed, the process proceeds to S1050 (see FIG.14).

If YES was determined in S1022 (if the random number was 1), the CPU 60writes the gradation value of the pixel read in S1004 into the cell ofthe first buffer area 80 a that corresponds to his pixel (S1041). Thatis, in the case where the gradation value of the cell 72-n of FIG. 8 hasbeen read in S1004, the CPU 60 writes that graduation value into thecell 80 a-n of FIG. 10 in S1041.

When S1041 has been completed, the process proceeds to S1042. The CPU 60adds 1 to the value of the cell of the first count value storage 76 athat corresponds to the pixel read in S1004. That is, if the cell 72-nof FIG. S has been read in S1004, the CPU 60 adds 1 to the value of thecell 76 a-n of FIG. 9 in S1042. For example, if the value in the cell 76a-n was 0, the value of the cell 76 a-n becomes 1. As another example,if the value in the cell 76 a-n was 1, the value of the cell 76 a-nbecomes 2. Moreover, if the value in the cell 76 a-n was 2, YES wasdetermined in S1011, and consequently the process would not haveproceeded to S1042. Further, the CPU 60 writes 0 in the cell of thesecond count value storage 76 b that corresponds to the pixel read inS1004. That is, if the cell 72-n of FIG. 8 has been read in S1004, theCPU 60 writes 0 in the cell 76 b-n of FIG. 9 in S1042.

When S1042 has been completed, the process proceeds to S1050 (see FIG.14).

In S1050 of FIG. 14, the CPU 60 determines whether the processes havebeen executed for all the pixels of the one row data. In the case whereNO is determined, the process returns to S1004, and the next pixel isread.

In the case where YES is determined, the process proceeds to S1051. InS1051, the CPU 60 outputs the contents of the buffer areas 80 a and 80 bto the printer 30. At the point when S1051 is executed, the gradationvalues of all the pixels of the one row data have been sorted intoeither of the buffer areas 80 a and 80 b.

In the present embodiment, the content stored in the buffer areas 80 aand 80 b is termed the print data. FIG. 16 shows the print datacorresponding to the one row data of FIG. 8. Since the gradation valueof the cell 72-1 of FIG. 8 is 0, the cells 80 a-1 and 80 b-1 of FIG. 16both store 0. Further, the gradation value of the cell 72-2 of FIG. 8is 1. The gradation value 1 of the cell 72-2 is sorted into either ofthe cells 80 a-2 and 80 b-2- In the example of FIG. 16, 1 is stored inthe cell 80 a-2 and 0 is stored in the cell 80 b-2. Further, thegradation value of the cell 72-3 of FIG. 8 is 3, the gradation value ofthe cell 72-4 is 1, and the gradation value of the cell 72-5 is 3. Thisinformation is also sorted into either of the buffer areas 80 a and 80b. That is, in the example of FIG. 16, the cell 80 b-3 stores 3, thecell 80 b-4 stores 1, and the cell 80 a-5 stores 3.

In S1051, the CPU 60 outputs one row's worth of the print data (thecontents stored in the buffer areas 80 a and 80 b) to the printer 30.The manner in which the print data is utilized by the printer 30 will bedescribed later.

After S1051 has been completed, the CPU 60 determines whether theprocesses have been completed for all the one row data included in theimage data 90 (S1052). If NO is determined in S1052, the process returnsto S1002 and the processes for the next one row data are executed.

If YES is determined in S1052, the print data creating process ends.

Next, the process for executing the printer 30 will be described. Theprint data output from the PC 20 in the process of S1051 is input to theprinter 30. The CPU 100 of the printer 30 controls the ink jet head 32and the transferring device 104 (see FIG. 7) based on the input printdata

The CPU 100 causes ink to be discharged from the nozzles 34 a-n inaccordance with the content of the cells 80 a-n of FIG. 16. For example,since the gradation value of the cell 80 a-1 of FIG. 16 is 0, the CPU100 does not cause ink to be discharged from the nozzle 34 a-1. Asanother example, since the gradation value of the cell 80 a-2 is 1, theCPU 100 causes ink to be discharged from the nozzle 34 a-2. Here, aquantity of ink is discharged for forming a small dot. As anotherexample, since the gradation value of the cell 80 a-2 is 3, the CPU 100causes ink to be discharged from the nozzle 34 a-5. Here, a quantity ofink is discharged for forming a large dot. Further, the CPU 100 causesink to be discharged from the nozzles 34 b-n in accordance with thecontent of the cells 80 b-n of FIG. 16. For example, since the gradationvalue of the cell 80 b-1 of FIG. 16 is 0, the CPU 100 does not cause inkto be discharged from the nozzle 34 b-1. As another example, since thegradation value of the cell 80 b-3 is 3, the CPU 100 causes ink to bedischarged from the nozzle 34 b-3. Here, a quantity of ink is dischargedfor forming a large dot.

Moreover, the CPU 100 causes ink to be discharged from the nozzlessimultaneously For example, in the example of FIG. 16, ink is dischargedsimultaneously from the nozzles 34 a-2, 34 b-3, 34 b-4, and 34 a-5. As aresult, a plurality of dots aligned in the X direction are formedsimultaneously on the printing paper 12.

The CPU 100 forms the dots based on one row's worth of print data, thendrives the transferring device 104 so as to transport the printing paper12. The printing paper 12 is transported by a distance corresponding tothe resolution of the printer 30 in the Y direction. When the CPU 100transports the printing paper 12, the CPU 100 waits for the next row'sworth of print data to be output from the PC 20. The CPU 100 repeatedlyexecutes the process of forming dots based on one row's worth of printdata and the process of transporting the printing paper 12. An imagecorresponding to the image data 90 is thus printed on the entire rangeof the printing paper 12.

As described above, the CPU 100 discharges ink from the nozzles based onthe information in the cells of the print data. In the example of FIG.16, the gradation value of both the cell 80 a-1 and the cell 80 b-1 is0, and therefore ink is discharged from neither the nozzle 34 a-1 northe nozzle 34 b-1. That is, in the case of this one row's worth of printdata, neither of the nozzles for discharging ink from the nozzle unit34-1 has been selected by the PC 20.

However, the gradation value of the cell 80 a-2 of FIG. 16 is 1, andconsequently ink is discharged from the nozzle 34 a-2, and is notdischarged from the nozzle 34 b-2. That is, the nozzle 34 a-2 of thenozzle unit 34-2 has been selected by the PC 20. Further, the gradationvalue of the cell 80 b-3 of FIG. 16 is 3, and consequently ink isdischarged from the nozzle 34 b-3, and is not discharged from the nozzle34 a-3. That is, the nozzle 34 b-3 of the nozzle unit 34-3 has beenselected by the PC 20.

The print data includes a plurality of combinations of position wherethe dot is to be formed, one nozzle selected from the nozzles of thenozzle unit corresponding to that position, and the ink quantity to bedischarged from that nozzle. For example, in the example of FIG. 16,when 1 is stored in the cell 80 a-2, this signifies the combination‘X˜2’, ‘the nozzle 34 a-2’ and ‘ink quantity for forming a small dot.’It might seem that position in the Y direction is not stored in thisinformation. However, the position of the image data 90 in the Ydirection is retained in the sequence in which the print data is sent.The PC 20 creates print data that is mapped to positions in the Ydirection by creating this print data in the sequence of the Ydirection.

In the present embodiment, the combination of position, selected nozzle,and ink quantity included in the print data is also termed the selectednozzle information. That is, the print data includes a plurality ofitems of selected nozzle information.

The PC 20 basically selects one nozzle at random utilizing a randomnumber (see S1021˜S1042 of FIG. 15). That is, the PC 20 randomly selectsone nozzle from the nozzles of one nozzle unit, thus creating theselected nozzle information.

However, the PC 20 counts the number of times that the same nozzle ofeach nozzle unit has formed dots. For example, in the case where thenozzle 34 a-1 has formed a dot when 0 is stored in the cell 76 a-1 ofthe first count value storage 76 a, 1 is written in the cell 76 a-1(S1042). Further, in the case where the nozzle 34 a-1 has formed a dotwhen 1 is stored in the cell 76 a-1 of the first count value storage 76a, 2 is written in the cell 76 a-1 (S1042). Random selection isprohibited when 2 is being stored in the cell 76 a-1, and instead thenozzle 34 b-1 must be selected (S1012). In this case, the dot is formedby the nozzle 34 b-1. The nozzle 34 a-1 is thus prevented from formingthree consecutive dots.

The PC 20 prohibits the same nozzle from being selected for more thantwo positions continuously aligned in the Y direction. As a result, dotsare prevented from being formed by the same nozzle at more than twoconsecutive positions in the Y direction. With the present embodiment,even when nozzles are not aligned equidistantly in the X direction, itis possible to completely eliminate the phenomenon wherein regions inwhich the ink density is much greater or smaller continue across a widerange in the Y direction. As a result, better printing results can beobtained than the conventional technique.

Furthermore, if dots are formed by the same nozzle at consecutivepositions in the Y direction, the following problem may occur.

Dots 140 of FIG. 17 are aligned in the sequence of a large dot 140 a, alarge dot 140 b, and a small dot 140 c. If these dots are formed by thesame nozzle, dots 141 or 142 may be formed. With the dots 141, a smalldot 141 c is larger than the small dot 140 c. With the dots 142, a smalldot 142 c is smaller than the small dot 140 c.

When dots are formed by the same nozzle at consecutive positions in theY direction, dots with the intended size might not be obtained. With thepresent embodiment, dots are prevented from being formed by the samenozzle at more than two consecutive positions in the Y direction, As aresult, the above type of problem does not readily occur. Satisfactoryprinting results can therefore be obtained

Variants of the above embodiment are given below.

(1) The technique of the above representative embodiment can also beutilized by a serial type ink jet printer.

(2) The nozzles of the nozzle line 34 a may also discharge ink in avertical direction (see FIG. 5). In this case, the timing at which inkis discharged from the nozzles of the nozzle line 34 a may vary from thetiming at which ink is discharged from the nozzles of the nozzle line 34b. The nozzle line 34 a and the nozzle line 34 b can thus form dots atthe same positions.

(3) The number of nozzles in one nozzle unit is not limited to two. Thenumber can be changed to three or more.

(4) In the above representative embodiment, the maximum number of timesthe same nozzle can be selected consecutively was two times. However,the maximum number of times can be changed to three or more. Of course,the maximum number of times the same nozzle can be selectedconsecutively is a number smaller than the resolution (the number ofdots that can be formed in the Y direction) of the printer 30 in the Ydirection. Further, the maximum number may be one when the number ofnozzles in one nozzle unit is more than three.

It is preferred that the maximum number of times the same nozzle can beselected consecutively is a small number For example, it is preferredthat this number is set to be less than 10 times. The maximum number oftimes may equally well be set based on the resolution (dpi (dots perinch)) in the Y direction.

(5) The maximum number of times the same nozzle can be selectedconsecutively need not be fixed at two times. For example, the maximumnumber may be set as two times in the case of processing one item ofimage data, and may be set as a number other Man two times in the caseof processing a different item of image data. Further, the maximumnumber of times may be changed to a number other than two while one itemof image data is being processed.

(6) In the above representative embodiment, a case was described inwhich the ink jet printer 30 utilizes only one color of ink. However,the technique of the above representative embodiment can also beutilized by an ink jet printer utilizing a plurality of colors of ink.For example, an ink jet printer utilizing four colors of ink has fourink jet heads. In this case, the PC 20 creates the image data shown inFIG. 13 for each of the colors.

(7) Furthermore, in the above representative embodiment, the PC 20creates the print data. However, the printer 30 may equally well createthe print data. In this case, the reading device 120, the selectednozzle information creating device 122, and the counter 124 of FIG. 11are mounted in the printer 30. In this case, the following type ofvariant can be obtained.

For example, the printer 30 may have a scanner function, and may be ableto print an image that has been scanned. In this case, the printer 30creates print data from bit mapped data obtained from the scanned image,and executes a printing operation based on the print data that has beencreated.

1. A seismic streamer cleaning device, comprising: a housing adapted formounting onto a seismic streamer, said housing having at least oneexternal vane thereon, the at least one vane arranged to causelongitudinal and rotational movement of the housing along an exterior ofa seismic streamer as the streamer is towed through the water; and atleast one cleaning element disposed inside the housing and arranged tobe cooperatively engageable with an exterior surface of the seismicstreamer, the It least one cleaning element arranged in the housing suchthat the longitudinal and rotational motion of the housingcorrespondingly longitudinally and rotationally moves the at least onecleaning element.
 2. (canceled)
 3. (canceled)
 4. The cleaning device ofclaim 1 wherein the cleaning element comprises brush bristles.
 5. Thecleaning device of claim 1 wherein the cleaning element is coupled tothe interior of the housing by a resilient material insert.
 6. Thecleaning device of claim 5 further comprising a plurality of cleaningelements coupled to the interior of the housing by respective inserts,the inserts and cleaning elements covering a limited portion of thecircumference of the interior of the housing so as to form acircumferential opening adapted to enable passage over a device on theexterior of the steamer.
 7. The cleaning device of claim 6 wherein thecircumferential opening is adapted to enable passage over a compassbird.
 8. The cleaning device of claim 1 wherein the housing is splitlongitudinally and comprises at least one hinge to coupled the splithousing to enable affixing the device to the seismic streamer while thestreamer remains engaged to a towing vessel.
 9. A seismic streamercleaning device, comprising: means for converting movement of water pasta seismic streamer into longitudinal and rotational movement of thedevice along the seismic streamer; and a cleaning element operativelyengaged with the means for converting and an exterior surface of theseismic Streamer such that the longitudinal and rotational motion istransmitted correspondingly to the cleaning element.
 10. (canceled) 11.(canceled)
 12. The cleaning device of claim 9 wherein the cleaningelement comprises brush bristles.
 13. The cleaning device of claim 9wherein the means for converting comprises a housing having at least onevane thereon.
 14. A method for cleaning a seismic streamer, comprising:towing the streamer through a body of water; converting movement of thewater past the streamer into longitudinal and rotational movement of adevice along the streamer, and using the movement directly to operate acleaning element cooperatively engaged with an outer surface of thestreamer.
 15. (canceled)
 16. (canceled)
 17. The method of claim 14wherein the cleaning element comprises brush bristles.
 18. The method ofclaim 16 further comprising using the rotational motion cooperativelywith an insert in the device to orient the device to enable longitudinalpassage of the device over a size restriction on an exterior of thestreamer.